#!/bin/bash
#auto install zabbix
#by jfedu.net 2017
#############
ZABBIX_SOFT="zabbix-4.0.19.tar.gz"
ZABBIX_DIR=`echo $ZABBIX_SOFT|sed 's/\.tar.*//g'`
INSTALL_DIR="/usr/local/zabbix/"
SERVER_IP="192.168.111.128"
IP=`ifconfig|grep Bcast|awk '{print $2}'|sed 's/addr://g'`

SERVER_INSTALL(){
yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI
groupadd zabbix ;useradd -g zabbix zabbix;usermod -s /sbin/nologin zabbix

tar -xzf $ZABBIX_SOFT;cd `echo $ZABBIX_SOFT|sed 's/.tar.*//g'`
./configure  --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl &&make install
if [ $? -eq 0 ];then
	ln -s /usr/local/zabbix/sbin/zabbix_* /usr/local/sbin/
fi
cd - ;cd $ZABBIX_DIR
cp  misc/init.d/tru64/{zabbix_agentd,zabbix_server}  /etc/init.d/ ;chmod o+x /etc/init.d/zabbix_*
mkdir -p /var/www/html/zabbix/;cp -a  frontends/php/*  /var/www/html/zabbix/

#config zabbix server 
cp $INSTALL_DIR/etc/zabbix_server.conf $INSTALL_DIR/etc/zabbix_server.conf.bak
cat >$INSTALL_DIR/etc/zabbix_server.conf<<EOF
LogFile=/tmp/zabbix_server.log
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=123456
EOF
#config zabbix agentd
cat >$INSTALL_DIR/etc/zabbix_agentd.conf<<EOF
LogFile=/tmp/zabbix_agentd.log
Server=$SERVER_IP
ServerActive=$SERVER_IP
Hostname = $IP 
EOF

#start zabbix agentd
/etc/init.d/zabbix_server restart
/etc/init.d/zabbix_agentd restart
/etc/init.d/iptables stop
setenforce 0
}

AGENT_INSTALL(){
yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI
groupadd zabbix ;useradd -g zabbix zabbix;usermod -s /sbin/nologin zabbix

tar -xzf $ZABBIX_SOFT;cd `echo $ZABBIX_SOFT|sed 's/.tar.*//g'`
./configure  --prefix=/usr/local/zabbix  --enable-agent&&make install
if [ $? -eq 0 ];then
	ln -s /usr/local/zabbix/sbin/zabbix_* /usr/local/sbin/
fi
cd - ;cd $ZABBIX_DIR
cp  misc/init.d/tru64/zabbix_agentd  /etc/init.d/zabbix_agentd ;chmod o+x /etc/init.d/zabbix_agentd

#config zabbix agentd
cat >$INSTALL_DIR/etc/zabbix_agentd.conf<<EOF
LogFile=/tmp/zabbix_agentd.log
Server=$SERVER_IP
ServerActive=$SERVER_IP
Hostname = $IP 
EOF

#start zabbix agentd
/etc/init.d/zabbix_agentd restart
/etc/init.d/iptables stop
setenforce 0
}

read -p "Please confirm whether to install Zabbix Server,yes or no? " INPUT
if [ $INPUT == "yes" -o $INPUT == "y" ];then
	SERVER_INSTALL
else
	AGENT_INSTALL
fi
